package cliente.jogocliente.iu;

import java.awt.Color;
import java.awt.Dimension;

import javax.swing.JPanel;
import javax.swing.border.LineBorder;

import cliente.jogocliente.rn.RNSalaJogo;
import cliente.jogocliente.so.SOJogoClienteSaida;

public class IUSalaJogo extends JPanel {
	private static final long serialVersionUID = -8421542857969423279L;

	private RNSalaJogo salaJogo;
	private IUSalaJogoPanelDireita salaJogoPanelDireita;
	private IUSalaJogoPanelEsquerda salaJogoPanelEsquerda;

	public IUSalaJogo(RNSalaJogo salaJogo, SOJogoClienteSaida jogoClienteSaida) {
		this.setSalaJogo(salaJogo);
		setSalaJogoPanelDireita(new IUSalaJogoPanelDireita(salaJogo,
				jogoClienteSaida));
		setSalaJogoPanelEsquerda(new IUSalaJogoPanelEsquerda(salaJogo));
		getSalaJogoPanelEsquerda().setBounds(10, 10, 600, 600);
		getSalaJogoPanelEsquerda()
				.setBorder(new LineBorder(new Color(0, 0, 0)));
		getSalaJogoPanelDireita().setBounds(625, 10, 200, 600);
		this.setSize(new Dimension(600, 600));
		setLayout(null);
		this.add(getSalaJogoPanelDireita());
		this.add(getSalaJogoPanelEsquerda());
	}

	public IUSalaJogoPanelDireita getSalaJogoPanelDireita() {
		return salaJogoPanelDireita;
	}

	public IUSalaJogoPanelEsquerda getSalaJogoPanelEsquerda() {
		return salaJogoPanelEsquerda;
	}

	public void informarFimPartida() {
		getSalaJogoPanelDireita().informarFimPartida();
	}

	protected RNSalaJogo getSalaJogo() {
		return salaJogo;
	}

	protected void setSalaJogo(RNSalaJogo salaJogo) {
		this.salaJogo = salaJogo;
	}

	protected void setSalaJogoPanelDireita(
			IUSalaJogoPanelDireita salaJogoPanelDireita) {
		this.salaJogoPanelDireita = salaJogoPanelDireita;
	}

	protected void setSalaJogoPanelEsquerda(
			IUSalaJogoPanelEsquerda salaJogoPanelEsquerda) {
		this.salaJogoPanelEsquerda = salaJogoPanelEsquerda;
	}
}
